class Solution {//leetcode75——颜色分类
private:
    void _swap(int &lhs,int&rhs){
        int tmp=rhs;
        rhs=lhs;
        lhs=tmp;
    }
public:
    void sortColors(vector<int>& nums) {
        int n=nums.size();
        for(int left=-1,i=0,right=n;i<right;){
            if(nums[i]==0)
                _swap(nums[i++],nums[++left]);
            else if(nums[i]==1)
                i++;
            else 
                _swap(nums[i],nums[--right]);
        }
    }
};